package com.baizhi.entity;

import java.io.Serializable;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
//购物车类  保存一个用户选取商品的信息（可能有多个商品条目item）
public class ShopCar implements Serializable {
	//定义map集合类型的属性 用商品的idֵ做key 购物车内的每条商品条目item做value
	private Map<Integer,Item> cart = new HashMap<>();
	private Integer cid;//购物车编号
	private List<Item> list;

	public List<Item> getList() {
		return list;
	}

	public void setList(List<Item> list) {
		this.list = list;
	}

	public Integer getCid() {
		return cid;
	}

	public void setCid(Integer cid) {
		this.cid = cid;
	}

	//提供一个修改方法  用来操作购物车内每一个商品条目中的属性size（添加的数量）
	public void updateItems(Integer id,Integer size) {
		//首先，根据商品id 找到要修改的购物车内的商品条目
		Item item = cart.get(id);
		//根据修改后的数量  对购物车进行修改
		if(size==0) {
			//若修改后的数量为0  则删除对应的商品条目
			cart.remove(id);
		}else {
			//将商品条目的数量修改为对应的结果  再将此item放进购物车的map集合内
			item.setSize(size);
			cart.put(id, item);
		}
	}

	public ShopCar() {
		super();
	}

	public Map<Integer, Item> getCart() {
		return cart;
	}

	public void setCart(Map<Integer, Item> cart) {
		this.cart = cart;
	}

	@Override
	public String toString() {
		return "ShopCar{" +
				"cart=" + cart +
				'}';
	}
}
